﻿#define DEBUG

//... neki kod

#if DEBUG
// kod koji se ukljucuje ako je DEBUG
#else
 // kod koji se ukljucuje ako nije DEBUG
#endif

//... some normal code - not affected by preprocessor


using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;

namespace CS322_V5
{

    static class Program
    {
        /// <summary>
        /// The main entry point for the application.
        /// </summary>
        [STAThread]
        static void Main()
        {
            primeriZaVezbuPet();
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
           // Application.Run(new Form1());
         //   Application.Run(new FormaKalkulator());
      //      Application.Run(new FormaZaKonverziju());

            //   Application.Run(new FormaZbir());
            Application.Run(new FormFibonaci());


        }


        public static void primeriZaVezbuPet()
        {

            //Inicijalizacija i dodeljivanje vrednosti promenljivoj
            int mojBroj = 7;
            System.Console.WriteLine("Inicijalizovana, mojBroj: {0}", mojBroj);

            mojBroj = 5;
            System.Console.WriteLine("Posle dodele, mojBroj: {0}", mojBroj);

            int nekiBroj = 1;
            // Operatori
            /* Operatori */
            nekiBroj = nekiBroj * 5000;
            nekiBroj = nekiBroj - 5000;

            nekiBroj *= nekiBroj;
            nekiBroj -= nekiBroj;

            
            //Implicitna konverzija
          //  --short x = 5;
           //int y = x;

        //    short x;
         //   int y = 500;
         //   x = y;  // nije moguće konvertovati

            short x;
            int y = 500;
            x = (short)y;  // OK
        }




    }

    public class Time
    {
        // privatne promenljive
        int Year;
        int Month;
        int Date;
        int Hour;
        int Minute;
        int Second;

        // javne metode
        public void DisplayCurrentTime()
        {
            System.Console.WriteLine("{0}/{1}/{2} {3}:{4}:{5}",
               Month, Date, Year, Hour, Minute, Second);
        }

        // Konstruktor
        public Time(System.DateTime dt)
        {

            Year = dt.Year;
            Month = dt.Month;
            Date = dt.Day;
            Hour = dt.Hour;
            Minute = dt.Minute;
            Second = dt.Second;
        }
    }


}
